Skip to content

feat(swr-openapi): add custom error types to query builder #2147

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 10, 2025

Conversation

SSlime-s
Copy link
Contributor

@SSlime-s SSlime-s commented Feb 9, 2025

Changes

close #2136

Added a new Type Parameter, FetcherError, to createQueryHook, createImmutableHook, and createInfiniteHook.

It allows you to include FetcherError to the type of the error in the return value of useQuery.

By default, it is set to never to maintain backward compatibility.

Why this is needed is detailed in issue #2136 .

How to Review

To avoid breaking VSCode syntax highlighting, "<unique-key>" is assigned to a variable before being used in the type argument.

Checklist

  • Unit tests updated
  • docs/ updated (if necessary)
  • pnpm run update:examples run (only applicable for openapi-typescript)

Sorry, something went wrong.

Verified

This commit was signed with the committer’s verified signature.
SSlime-s しゅーまい
@SSlime-s SSlime-s requested a review from a team as a code owner February 9, 2025 10:56
Copy link

netlify bot commented Feb 9, 2025

👷 Deploy request for openapi-ts pending review.

Visit the deploys page to approve it

Name Link
🔨 Latest commit 9862782

Copy link

changeset-bot bot commented Feb 9, 2025

⚠️ No Changeset found

Latest commit: 9862782

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@SSlime-s
Copy link
Contributor Author

SSlime-s commented Mar 9, 2025

Is there anything I should do?

@drwpow
Copy link
Contributor

drwpow commented May 10, 2025

This looks great, thank you! Great tests, too! Please add a changeset (see comment) and we can merge and release!

@drwpow
Copy link
Contributor

drwpow commented May 10, 2025

Actually since there’s been some time that’s passed since the PR has been open and we’ve been slow to review, I’ll just add the changeset manually so we can get a release out. Thanks!

@drwpow drwpow merged commit 5848759 into openapi-ts:main May 10, 2025
8 checks passed
@drwpow drwpow mentioned this pull request May 10, 2025
jawnothin added a commit to augwa/openapi-typescript that referenced this pull request May 17, 2025

Partially verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
We cannot verify signatures from co-authors, and some of the co-authors attributed to this commit require their commits to be signed.
* Update schema-object.ts

* chore(deps): update dependency msw to v2.7.6 (openapi-ts#2287)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @types/node to v22.15.10 (openapi-ts#2293)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @shikijs/vitepress-twoslash to v3.4.0 (openapi-ts#2298)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @arethetypeswrong/cli to ^0.18.0 (openapi-ts#2272)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency execa to v9.5.3 (openapi-ts#2303)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(metadata): fix thunk type detection (openapi-ts#2125)

* Don't remove `null` type if a default is present. (openapi-ts#2145)

* Don't remove `null` type if a default is present.

* Don't remove `null` type from enums if default is present.

* Don't remove `null` type if default is present (legacy)

* [ci] release (openapi-ts#2307)

* [ci] release

* Add 2145 manually

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Drew Powers <drew@pow.rs>

* chore(deps): update dependency @types/react to v18.3.21 (openapi-ts#2218)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(openapi-fetch): fix overriding baseUrl per request without overriding default baseUrl (openapi-ts#2157)

* Support $ref into `paths` (openapi-ts#2185)

* React query handle 204 or zero content length (openapi-ts#2235)

* fix(openapi-react-query): Handle 204 or zero Content-Length header by returning data as null

* fix(openapi-react-query): updated and added 204 & zero Content-Length queryFn tests

* chore(openapi-react-query): Fixed linting in test

* chore(deps): update dependency @arethetypeswrong/cli to v0.18.1 (openapi-ts#2306)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency msw to v2.8.2 (openapi-ts#2304)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update Speakeasy URL (openapi-ts#2302)

* chore(deps): update dependency @tanstack/react-query to v5.75.7 (openapi-ts#2301)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency lint-staged to v15.5.2 (openapi-ts#2297)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(swr-openapi): add custom error types to query builder (openapi-ts#2147)

* chore(deps): update vitest monorepo to v3 (openapi-ts#2284)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Encode the request body if Content-Type set (openapi-ts#2096)

* Improve header handling (openapi-ts#2308)

* [ci] release (openapi-ts#2309)

* [ci] release

* Release additional packages

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Drew Powers <drew@pow.rs>

* chore: update openapi-fetch test fixture (openapi-ts#2313)

* Build packages with unbuild to improve CJS support (openapi-ts#2310)

* [ci] release (openapi-ts#2314)

* [ci] release

* Fix major bump

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Drew Powers <drew@pow.rs>

* Update code of conduct source (openapi-ts#2316)

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

---------

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Martin Paucot <contact@martin-paucot.fr>
Co-authored-by: Theron Luhn <theron@luhn.com>
Co-authored-by: openapi-ts-bot <openapi-ts@googlegroups.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Drew Powers <drew@pow.rs>
Co-authored-by: Luis Merino <mail@luismerino.name>
Co-authored-by: Duncan Beevers <duncan@dweebd.com>
Co-authored-by: Wheelebin <wheelebin@users.noreply.github.com>
Co-authored-by: Nolan Di Mare Sullivan <nolan.dm.sullivan@gmail.com>
Co-authored-by: しゅーまい <62363188+SSlime-s@users.noreply.github.com>
Co-authored-by: Olga Bulat <obulat@gmail.com>
Co-authored-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Allow Custom Error Types in createQueryHook for Enhanced Error Handling
2 participants